// 阿里云OSS配置
export const OSS_CONFIG = {
  // 请根据你的阿里云OSS配置修改以下参数
  region: 'oss-cn-beijing.aliyuncs.com', // OSS区域，根据你的bucket所在地区修改
  accessKeyId: 'LTAI5tGSSP7zqhx2XVrqZQdH', // 替换为你的AccessKeyId
  accessKeySecret: 'sAwM33a8JwgUYkxwsZKi03WfkqCZc2', // 替换为你的AccessKeySecret
  bucket: 'sx-z1', // 你的Bucket名称
  endpoint: 'https://oss-cn-beijing.aliyuncs.com', // OSS访问域名
  
  // 可选配置
  secure: true, // 使用HTTPS
  timeout: 60000, // 超时时间（毫秒）
  
  // 文件上传配置
  uploadConfig: {
    maxFileSize: 100 * 1024 * 1024, // 最大文件大小（100MB）
    allowedTypes: ['*/*'], // 允许所有文件类型
    imageCompression: {
      enabled: true, // 是否启用图片压缩
      maxWidth: 800, // 最大宽度
      quality: 0.8, // 压缩质量
    },
  },
  
  // 文件路径配置
  pathConfig: {
    imagePrefix: 'images/', // 图片文件前缀
    tempPrefix: 'temp/', // 临时文件前缀
    filePrefix: 'files/', // 普通文件前缀
  },
};

// 获取OSS配置（支持环境变量覆盖）
export const getOSSConfig = () => {
  return {
    region: import.meta.env.VITE_OSS_REGION || OSS_CONFIG.region,
    accessKeyId: import.meta.env.VITE_OSS_ACCESS_KEY_ID || OSS_CONFIG.accessKeyId,
    accessKeySecret: import.meta.env.VITE_OSS_ACCESS_KEY_SECRET || OSS_CONFIG.accessKeySecret,
    bucket: import.meta.env.VITE_OSS_BUCKET || OSS_CONFIG.bucket,
    endpoint: import.meta.env.VITE_OSS_ENDPOINT || OSS_CONFIG.endpoint,
    secure: OSS_CONFIG.secure,
    timeout: OSS_CONFIG.timeout,
  };
};

// 验证OSS配置
export const validateOSSConfig = (config: any) => {
  const requiredFields = ['region', 'accessKeyId', 'accessKeySecret', 'bucket'];
  const missingFields = requiredFields.filter(field => !config[field]);
  
  if (missingFields.length > 0) {
    throw new Error(`OSS配置缺少必要字段: ${missingFields.join(', ')}`);
  }
  
  return true;
};

// 获取文件上传配置
export const getUploadConfig = () => {
  return OSS_CONFIG.uploadConfig;
};

// 获取文件路径配置
export const getPathConfig = () => {
  return OSS_CONFIG.pathConfig;
}; 